Manchester encoding is a technique of encoding serial binary data to be transmitted between synchronous communication systems. Referring to FIG. 1, the binary data is typically in NRZ (non-return to zero) format in which a high level indicates a "1" bit and a low level indicates a "0" bit. The data is encoded with an encoding clock usually by Exclusive Or-ing rectangularwave clock pulses which are in phase with the bit cells of the NRZ data. This encoding process produces a transition in the center of each bit cell. That is, a data bit of "0" will be encoded as a high-to-low level transition in the center of the bit cell, and a data bit of "1" will be encoded as a low-to-high level transition at the bit center. The continuous encoding of binary data bits will produce an encoded data stream having positive or negative transitions for each bit transmitted.
The overall system must transmit a pattern that will insure the proper recovery of the binary data with a low bit rate error at the receiving end. At the beginning of a transmission of data, the system typically transmits a "dotting" pattern of alternate 1's and 0's for a short period of time in order to establish the phase of the encoding clock. This dotting pattern has a frequency of one-half the clock frequency, so that the encoded data have transitions only in the centers of the respective bit cells. The transmitted dotting pattern allows the receiving system to establish a decoding clock which is ideally in phase with the encoding clock. The decoding clock is then used to decode the transmitted data back into NRZ format usually by Exclusive Or-ing with the encoded data.
However, in the course of transmission, noise and path interferences or distortions can cause the received encoded data to deviate from the phase of the decoding clock initially established by the dotting pattern. As the phase errors accumulate, the transitions of the Manchester-encoded data can deviate quite far from the centers of the bit cells, thereby leading to errors in recovery of the binary data.
As one example of an application for Manchester encoding/decoding of binary data, the wideband output of an FM receiver discriminator in a cellular radio telephone contains voice signals and supervisory audio tones which are time multiplexed with 10 Kb/s Manchester-encoded control signals. A Manchester logic "1" level is represented by fo+8 khz and a "0" level by fo-8 khz. The data is used for such functions as establishing the cell-to-mobile connection and for radio channel selections. However, the cellular radio environment is replete with noise, Doppler shifts, reflections, and problems with discriminator linearity, so that simply Exclusive Or-ing the regenerated decoding clock with raw Manchester data will not provide data recovery at acceptably low error rates.